The inventive concept relates to memory systems and devices. More particularly, the inventive concept relates to memory systems including a nonvolatile memory device and management methods for same.
Nonvolatile memory is widely used to store data in a manner that ensures the retention of data integrity even when power to the nonvolatile memory device is interrupted. Flash memory is one commercially important type of EEPROM (Electrically Erasable Programmable Read-Only Memory) and is one example of nonvolatile memory. Flash memory is widely used in various electronic apparatuses such as PDAs, cellular phones, digital cameras, MP3 players, game consoles, printers, and so on.
Nonvolatile memory systems (memory systems including one or more nonvolatile memory devices) may be powered off normally or abnormally. A normal power-off is usually performed in response to a determined command (e.g., by a user) and proceeds according to a defined routine that places the memory system in a condition that ensures data integrity upon a following reboot. In contrast, an abnormal power-off is often the result of unintended consequences (e.g. loss of power supply) and may very well result in stored data (user-defined or corresponding metadata) being left in erroneous or unknown states. That is, when a nonvolatile memory is abnormally powered off during a data program operation, for example, invalid data may be stored in one or more memory cells of the nonvolatile memory. Such invalid data may be the result of incomplete or fully errant programming and includes the so-called “soft program state” that results when a memory cell is left programmed to a threshold voltage that is lower than its intended or target threshold voltage. As a result, erroneously stored data may be retrieved during a subsequent read operation upon reboot.
To ensure data accuracy and stability, certain nonvolatile memory management methods have been proposed that prevent the unacceptable data results caused by abnormal power-offs. However, many conventional management methods mandate a high number of erase and re-program operations. Such approaches take a long time to run thereby extending reboot times and also reduce the effective lifetime of the constituent nonvolatile memory cells due to repeated erase operations.